layui.use(['table', 'layer'], function () {
    var layer = parent.layer === undefined ? layui.layer : top.layer,
        $ = layui.jquery,
        table = layui.table;


    var tableIns = table.render({
        id: 'userTable'
        , elem: '#userList'
        //容器的高度，full差值
        , height: 'full-125'
        //请求数据的接口 从
        , url: '/crm/user/list' //数据接口
        , cellMinWidth: 95  //最小表格宽度
        , limit: 10   //每页显示数量为10条
        , page: true //开启分页
        , limits: [10, 20, 30, 40]  // 每页页数的可选项
        , toolbar: '#toolbarDemo'
        , cols: [[ //表头
            //field 设定字段名。非常重要，且是表格数据列的唯一标识
            //title设定标题名称
            //sort 是否允许排序（默认：false）。如果设置 true，则在对应的表头显示排序icon，从而对列开启排序功能。
            //fixed
            {type: 'checkbox', fixed: 'center'}
            , {field: 'id', title: 'ID', sort: true, fixed: 'left'}
            , {field: 'userName', title: '用户名称', align: 'center'}
            , {field: 'trueName', title: '真实姓名', align: 'center'}
            , {field: 'email', title: '用户邮箱', align: 'center'}
            , {field: 'phone', title: '用户号码', align: 'center'}
            , {field: 'createDate', title: '创建时间', align: 'center'}
            , {field: 'updateDate', title: '更新时间', align: 'center'}
            , {title: '操作', templet: '#userListBar', fixed: 'right', align: 'center', minWith: '150'}
        ]]
    });

    $(".search_btn").click(function () {
        /**
         * 表格重载
         * 多条件查询
         */
        tableIns.reload({
            where: {
                userName: $("[name='userName']").val()  //用户名称
                , email: $("[name='email']").val()      //邮箱
                , phone: $("[name='phone']").val()      //手机
            }
            , page: {
                curr: 1  //从第一页开始
            }
        });
    });

    //工具栏监听
    table.on('toolbar(users)', function (data) {

        if (data.event == "add") {
            //打开添加/修改用户的对话框
            openAddOrUpdateDialog(null);
        } else if (data.event == "del") {
            deleteUser(data);
        }

    });

    function deleteUser(data) {
        //获取选中表格的行数据      table.checkStatus("数据表格的ID属性值");
        var checkStatus = table.checkStatus("userTable");
        //获取选中行中的数据
        var userData = checkStatus.data;
        //判断用户是否选择的记录，（选中行的数量大于0）
        if (userData.length < 1) {
            layer.msg("请选择要删除的记录", {icon: 5});
            return;
        }
        layer.confirm('确认删除', {icon: 3, title: "用户管理"}, function (index) {
            layer.close(index);
            //传递的参数是数组，ids=1&ids=2....
            var ids = "ids=";
            //循环刚才拿到的数组
            for (var i = 0; i < userData.length; i++) {
                if (i < userData.length - 1) {
                    ids += userData[i].id + "&ids=";
                } else {
                    ids += userData[i].id;
                }
            }
            console.log(ids);
            //发送ajax请求，删除记录
            $.ajax({
                type: "post",
                url: ctx + "/user/delete",
                data: ids,
                success: function (result) {
                    //判断
                    if (result.code == 200) {
                        // 成功
                        layer.msg("删除成功", {icon: 6});
                        tableIns.reload();
                    } else {
                        // 失败
                        layer.msg("删除失败", {icon: 5});
                    }
                }
            });
        });
    }


    function openAddOrUpdateDialog(id) {
        var title = "<h3>用户管理 - 添加用户</h3>";
        var url = ctx + "/user/toAddOrUpdateUserPage";
        if (null != id && id != '') {
            title = "<h3>用户管理 - 修改用户</h3>";
            url += "?id=" + id;
        }
        //iframe层
        layui.layer.open({
            type: 2,
            title: title,
            shadeClose: true,
            shade: 0.8,
            area: ['600px', '550px'],
            content: url,
            maxmin: true,
        });
    }

    //行工具监听事件
    table.on('tool(users)', function (data) {
        if (data.event == "edit") {
            //打开弹出层
            openAddOrUpdateDialog(data.data.id);
        } else if (data.event == "del") {
            layer.confirm('确认删除', {icon: 3, title: "用户管理"}, function (index) {
                //关闭确认源
                layer.close(index);
                //发送ajax请求，删除记录
                $.ajax({
                    type: "post",
                    url: ctx + "/user/delete",
                    data: {
                        ids: data.data.id,
                    },
                    success: function (result) {
                        //判断
                        if (result.code == 200) {
                            // 成功
                            layer.msg("删除成功", {icon: 6});
                            tableIns.reload();
                        } else {
                            // 失败
                            layer.msg("删除失败", {icon: 5});
                        }
                    }
                });
            });
        }
    });

});